package com.neusoft.ysu.populationmanagement.service;

import com.neusoft.ysu.populationmanagement.entity.CommonResult;
import com.neusoft.ysu.populationmanagement.entity.LiveCard;

import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author 作者：赵子鉴
 * @since 2024-06-24
 */
public interface ILiveCardService {
    /**
     * 居住证申请
     *
     * @param idnum      身份证号
     * @param pid        派出所id
     * @param operatorId 操作员id
     * @return CommonResult
     * @author 赵子鉴
     * @date 2024-06-24 09:32
     */
    CommonResult apllyLiveCard(String idnum, Long pid, Long operatorId);

    /**
     * 居住证制证
     *
     * @param idnum      身份证号
     * @param pid        派出所id
     * @param operatorId 操作员id
     * @return CommonResult
     * @author 赵子鉴
     * @date 2024-06-24 13:45
     */
    CommonResult buildLiveCard(String idnum, Long pid, Long operatorId);

    /**
     * 居住证完证
     *
     * @param idnum      身份证号
     * @param pid        派出所id
     * @param operatorId 操作员id
     * @return CommonResult
     * @author 赵子鉴
     * @date 2024-06-24 09:32
     */
    CommonResult finishLiveCard(String idnum, Long pid, Long operatorId);

    /**
     * 居住证发证
     *
     * @param idnum      身份证号
     * @param pid        派出所id
     * @param operatorId 操作员id
     * @return CommonResult
     * @author 赵子鉴
     * @date 2024-06-24 09:32
     */
    CommonResult sendLiveCard(String idnum, Long pid, Long operatorId);

    /**
     * 居住证挂失
     *
     * @param idnum      身份证号
     * @param pid        派出所id
     * @param operatorId 操作员id
     * @return CommonResult
     * @author 赵子鉴
     * @date 2024-06-24 09:37
     */
    CommonResult lossLiveCard(String idnum, Long pid, Long operatorId);

    /**
     * 居住证作废
     *
     * @param idnum      身份证号
     * @param pid        派出所id
     * @param operatorId 操作员id
     * @return CommonResult
     * @author 赵子鉴
     * @date 2024-06-24 09:38
     */
    CommonResult deleteLiveCard(String idnum, Long pid, Long operatorId);

    /**
     * 查询未作废的居住证
     *
     * @param idnum
     * @return com.neusoft.ysu.populationmanagement.entity.CommonResult
     * @author 赵子鉴
     * @date 2024-06-24 09:38
     */
    List<LiveCard> selectLiveCardByIdnum(String idnum);
}
